Given an integer array nums of unique elements, return all possible subsets (the power set).
The solution set must not contain duplicate subsets. Return the solution in any order.
Constraints:
1 <= nums.length <= 10-10 <= nums[i] <= 10nums are unique.class Solution {
public:
vector<vector<int>> subsets(vector<int>& nums) {
vector<int> curr;
vector<vector<int>> result;
dfs(nums, 0, curr, result);
return result;
}
private:
void dfs(
vector<int>& nums,
int start,
vector<int>& curr,
vector<vector<int>>& result)
{
result.push_back(curr);
for(int i = start; i < nums.size(); i++)
{
curr.push_back(nums[i]);
dfs(nums, i+1, curr, result);
curr.pop_back();
}
}
};